﻿/*
SINACOR - BMF&Bovespa
Arquivo: ErroRecepcaoOferta.cs
Criado em: 26-nov-2009 17:19:03
Arquiteto Responsável: WGeneroso.prg
*/
using System;
using System.Collections.Generic;
using System.Text;
using System.ComponentModel;
using Sinacor.Infra.Service.Validation;
using Sinacor.Infra.Service.Common;
using Sinacor.Infra.Common.Exceptions;
using Sinacor.Infra.Service.ExceptionHandling;

namespace Sinacor.Servico.Bovespa.ManutencaoOrdens.BusinessLogic {

	/// <summary>
	/// Lógica de negocios para erros nas recepções de ofertas
	/// </summary>
	public class ErroRecepcaoOferta : BaseBusinessLogic {

		#region Atributos 
		private int _erroObjetoNulo = 109569; 
		#endregion Atributos

		#region Propriedades 
		public int ErroObjetoNulo{
			get
			{
				return _erroObjetoNulo;
			}
			set
			{
				_erroObjetoNulo = value;
			}
		} 
		#endregion Propriedades

		#region Construtores 
		public ErroRecepcaoOferta(){} 
		#endregion Construtores

		#region Métodos 
		/// <summary>
		/// Consulta uma lista de erros de recepções de ofertas conforme filtro.
		/// </summary>
		/// <param name="entity"></param>
		public List<BusinessEntity.ErroRecepcaoOferta> ConsultarErrosRecepcoesOfertas(BusinessEntity.Parameter.FiltroErroRecepcaoOferta entity){
			
            if(entity == null)
            {
                throw new BusinessException(ErroObjetoNulo);
            }

            return new ResourceAccess.ErroRecepcaoOferta().ConsultarErrosRecepcoesOfertas(entity);
		}
		/// <summary>
		/// Verifica as correções dos erros de recepções de ofertas
		/// </summary>
		/// <param name="dataPregao"></param>
		public void VerificarCorrecoesErrosRecepcoesOfertas(DateTime dataPregao){			
            if (dataPregao == default(DateTime))
            {
                throw new BusinessException(ErroObjetoNulo);
            }
            new ResourceAccess.ErroRecepcaoOferta().VerificarCorrecoesErrosRecepcoesOfertas(dataPregao);
		} 
		#endregion Métodos 

	}

}